package com.co.notaweb.bussines;

import java.util.List;

import javax.ejb.Stateless;
import javax.ejb.TransactionAttribute;
import javax.ejb.TransactionAttributeType;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;

import com.co.notaweb.entities.Logro;

/**
 * @author PC
 * @version 1.0
 * @created 13-nov-2011 12:14:26
 */
@Stateless
@TransactionAttribute(TransactionAttributeType.MANDATORY)
public class LogroBussines implements ILogroBussinesLocal {

	@PersistenceContext(unitName = "notaweb")
	private EntityManager em;

	public LogroBussines() {

	}

	/**
	 * 
	 * @param logro
	 */
	public void create(Logro logro) {
		em.persist(logro);
	}

	/**
	 * 
	 * @param logro
	 */
	public void delete(Logro logro) {

	}

	/**
	 * 
	 * @param logro
	 */
	public void edit(Logro logro) {

	}

	/**
	 * 
	 * @param id
	 */
	public Logro find(long id) {
		return null;
	}

	public List<Logro> consultarLogrosPorCursoDocenteMateria(long idCurso,
			long idDocente, long idMateria) {
		return em.createNamedQuery("Logro.allLogrosByCursoDocenteMateria")
				.setParameter("idDocente", idDocente)
				.setParameter("idCurso", idCurso)
				.setParameter("idMateria", idMateria).getResultList();
	}
	
	public List<Logro> consultarLogrosPorCursoDocenteMateriaPeriodo(long idCurso,
			long idDocente, long idMateria, long idPeriodo) {
		return em.createNamedQuery("Logro.allLogrosByCursoDocenteMateriaPeriodo")
				.setParameter("idDocente", idDocente)
				.setParameter("idCurso", idCurso)
				.setParameter("idMateria", idMateria)
				.setParameter("idPeriodo", idPeriodo).getResultList();
	}


}